﻿using MediatR;
using RBAC.ErrorCode;

namespace SmartHealthcare.Write.Api.Application.Command.InpatientRegistry
{
    /// <summary>
    /// 创建住院登记命令
    /// </summary>
    public class CreateInpatientRegistryCommand : IRequest<APIResult<int>>
    {
        /// <summary>
        /// 病人卡号
        /// </summary>
        public string MedicalCard { get; set; } = string.Empty;

        /// <summary>
        /// 科室id （外键）
        /// </summary>
        public long DepartmentId { get; set; }

        /// <summary>
        /// 病房id（外键）
        /// </summary>
        public long WardNo { get; set; }

        /// <summary>
        /// 病床id（外键）
        /// </summary>
        public long WardId { get; set; }

        /// <summary>
        /// 预交费
        /// </summary>
        public decimal AdvancePayment { get; set; }

        /// <summary>
        /// 病情描述
        /// </summary>
        public string DiseaseDescription { get; set; } = string.Empty;

        /// <summary>
        /// 药物禁忌
        /// </summary>
        public string DrugContraindications { get; set; } = string.Empty;

        /// <summary>
        /// 入院时间（可选，默认为当前时间）
        /// </summary>
        public DateTime? AdmissionTime { get; set; }
    }
}
